The invention relates to a method and to an apparatus for providing OSD data for OSD display in a video signal having an encoded format.
TVs and other consumer electronics (CE) devices like VCRs and DVD players use on-screen display (OSD) of messages intended for making the control of the TV""s operation parameters more convenient for the user. Also, a subtitling feature is desirable.
For such purposes an additional hardware is required for visualising e.g. user commands. This hardware includes a video memory and a video mixer. The video memory stores the OSD text or graphic to be displayed. For display, the video mixer combines the stored OSD text or graphic with the pictures of the program currently broadcast or replayed.
Some CE devices like Set-Top Boxes or DVD players already include an MPEG decoder according to the ISO/IEC standards 11172 and 13818. Such MPEG decoders are available as chips, e.g. the MPEG2 decoder IC STi3520A of SGS-Thomson. In connection with such devices it is possible to omit for OSD purposes the above mentioned video mixer and thereby to reduce pretty expensive hardware. As explained below it is also possible to thereby reduce the required memory capacity which again makes the CE device cheaper.
As depicted in FIG. 1 an MPEG video signal consists of a sequence of pictures of intraframe type I1, I2, . . . , predicted type P1, P2, . . . , and bi-directionally predicted type B1, B2, B3, B4, B5, . . . .
FIG. 2 shows that each picture is formed from macroblocks MB which have a size of 16 lines LI with 16 pixels PI each. The picture may consist of 36 rows and 45 columns of such macroblocks. For some countries a picture has 30 rows of macroblocks. The decoding order DCO of the macroblocks begins in the top left corner of the pictures.
According to the invention the picture content of an OSD text or graphic is stored in a non-volatile memory, e.g. a ROM, in a specific format: the OSD text or graphic content is divided into macroblock units and the OSD macroblock data are stored in MPEG encoded form in said non-volatile memory. Such macroblocks are of I-type.
Thereby the feature is used that an MPEG picture is partitioned into slices as depicted in FIG. 3, example slices A to Q. A slice is a series of an arbitrary number of consecutive macroblocks. The first and last macroblocks of a slice are not skipped macroblocks. Every slice contains at least one macroblock. Slices do not overlap. The position of slices may change from picture to picture. The first and last macroblock of a slice are in the same horizontal row of macroblocks. Slices occur in the bitstream in the order in which they are encountered, starting at the upper-left of the picture and proceeding by raster-scan order from left to right and top to bottom. In the slice header, information is stored on the position in the picture the current slice is located. Normally, each macroblock in a picture is enclosed in a slice.
It is not necessary that the slices cover the entire picture, as shown in FIG. 4, example slices A to I. Those areas in a specific picture that are not enclosed in a slice are not encoded.
According to the invention an OSD can have the shape of a slice, e.g. like slices F, H and/or I in FIG. 4. In order to display OSDs in an MPEG-decoded picture one can decode (with or without the data of the macroblocks to be overlaid by the OSD) a video frame first and store it in the frame memory. Thereafter a video frame consisting (only) of the OSD macroblocks is decoded using an MPEG decoder, and is written at corresponding address values into that frame memory which holds the previously MPEG decoded video frame. Then the combined frame memory content is read and displayed as a complete video picture.
The invention has the advantage, that no complex hardware like a video mixing device is necessary for processing OSD data. On one side the memory space necessary for OSD purposes is distinctly reduced due to the fact that the OSD macroblock data are stored in compressed form. On the other side it is also possible to use high-quality graphic for OSDs due to the compressed-format storage. Normally, OSDs have a low colour resolution only so that the required memory capacity is further reduced.
It is one object of the invention to disclose a method for providing OSD data for OSD display in a video signal having an encoded format. It is a further object of the invention to disclose an apparatus which utilises the inventive method.
In principle, the inventive method is suited for providing OSD data for OSD display in a video signal having an encoded format, wherein the picture content of an OSD text or graphic or picture to be displayed is stored in that encoded format in a memory and is for the purpose of display correspondingly decoded and replaces at the OSD display area the matching area of the correspondingly decoded video signal, and wherein the encoded format is a format using data reduction.
Advantageously said data reduction format is the MPEG format and the encoded format of said OSD text or graphic or picture to be displayed are MPEG macroblocks of I-type, wherein the OSD macroblocks to be displayed form at least one MPEG slice.
In principle the inventive apparatus provides OSD data for OSD display in a video signal having an encoded format wherein the encoded format is a format using data reduction, and includes:
a memory in which the picture content of an OSD text or graphic or picture to be displayed is stored in that encoded format;
means for assembling OSD data to be decoded from said memory according to a request from an interface;
decoding means for decoding said video signal and for decoding said assembled OSD data for the purpose of display;
picture memory means in which pictures of said decoded video signal are stored for subsequent display and in which at the OSD display area said decoded OSD data replace said decoded video signal.